From f79d0e5aeb5e74b0967e78b0104655d325ac951a Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Fri, 24 Feb 2006 19:34:54 +0100 Subject: [PATCH] Split XENFEAT_ feature flags into new header file features.h. Signed-off-by: Keir Fraser --- xen/include/public/features.h | 53 +++++++++++++++++++++++++++++++++++ xen/include/public/version.h | 32 ++------------------- 2 files changed, 55 insertions(+), 30 deletions(-) create mode 100644 xen/include/public/features.h diff --git a/xen/include/public/features.h b/xen/include/public/features.h new file mode 100644 index 0000000000..c46e3becfe --- /dev/null +++ b/xen/include/public/features.h @@ -0,0 +1,53 @@ +/****************************************************************************** + * features.h + * + * Feature flags, reported by XENVER_get_features. + * + * Copyright (c) 2006, Keir Fraser + */ + +#ifndef __XEN_PUBLIC_FEATURES_H__ +#define __XEN_PUBLIC_FEATURES_H__ + +/* + * If set, the guest does not need to write-protect its pagetables, and can + * update them via direct writes. + */ +#define XENFEAT_writable_page_tables 0 + +/* + * If set, the guest does not need to write-protect its segment descriptor + * tables, and can update them via direct writes. + */ +#define XENFEAT_writable_descriptor_tables 1 + +/* + * If set, translation between the guest's 'pseudo-physical' address space + * and the host's machine address space are handled by the hypervisor. In this + * mode the guest does not need to perform phys-to/from-machine translations + * when performing page table operations. + */ +#define XENFEAT_auto_translated_physmap 2 + +/* If set, the guest is running in supervisor mode (e.g., x86 ring 0). */ +#define XENFEAT_supervisor_mode_kernel 3 + +/* + * If set, the guest does not need to allocate x86 PAE page directories + * below 4GB. This flag is usually implied by auto_translated_physmap. + */ +#define XENFEAT_pae_pgdir_above_4gb 4 + +#define XENFEAT_NR_SUBMAPS 1 + +#endif /* __XEN_PUBLIC_FEATURES_H__ */ + +/* + * Local variables: + * mode: C + * c-set-style: "BSD" + * c-basic-offset: 4 + * tab-width: 4 + * indent-tabs-mode: nil + * End: + */ diff --git a/xen/include/public/version.h b/xen/include/public/version.h index 5b68673d54..9a496f90d7 100644 --- a/xen/include/public/version.h +++ b/xen/include/public/version.h @@ -48,36 +48,8 @@ typedef struct xen_feature_info { uint32_t submap; /* OUT: 32-bit submap */ } xen_feature_info_t; -/* - * If set, the guest does not need to write-protect its pagetables, and can - * update them via direct writes. - */ -#define XENFEAT_writable_page_tables 0 - -/* - * If set, the guest does not need to write-protect its segment descriptor - * tables, and can update them via direct writes. - */ -#define XENFEAT_writable_descriptor_tables 1 - -/* - * If set, translation between the guest's 'pseudo-physical' address space - * and the host's machine address space are handled by the hypervisor. In this - * mode the guest does not need to perform phys-to/from-machine translations - * when performing page table operations. - */ -#define XENFEAT_auto_translated_physmap 2 - -/* If set, the guest is running in supervisor mode (e.g., x86 ring 0). */ -#define XENFEAT_supervisor_mode_kernel 3 - -/* - * If set, the guest does not need to allocate x86 PAE page directories - * below 4GB. This flag is usually implied by auto_translated_physmap. - */ -#define XENFEAT_pae_pgdir_above_4gb 4 - -#define XENFEAT_NR_SUBMAPS 1 +/* Declares the features reported by XENVER_get_features. */ +#include "features.h" #endif /* __XEN_PUBLIC_VERSION_H__ */ -- 2.30.2